package cn.tedu.zx.court.service;

import cn.tedu.zx.common.restful.JsonPage;
import cn.tedu.zx.pojo.court.dto.CourtAddNewDto;
import cn.tedu.zx.pojo.court.dto.CourtUpdateDto;
import cn.tedu.zx.pojo.court.vo.CourtDetailsVo;
import cn.tedu.zx.pojo.court.vo.CourtGroupListVo;
import cn.tedu.zx.pojo.court.vo.CourtListVo;
import cn.tedu.zx.pojo.court.vo.CourtUserWatchListVo;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

@Transactional
public interface CourtService {
    void addNew(CourtAddNewDto courtAddNewDto);

    void deleteById(Long id);

    void updateById(CourtUpdateDto courtUpdateDto);

    CourtDetailsVo selectDetailsById(Long Id);

    JsonPage<CourtListVo> list(Integer pageNum, Integer PageSize);

    void updateIsEnableBuId(Long id, Integer isEnable);

    List<CourtGroupListVo> listByCategoryId(Long categoryId);

    List<CourtUserWatchListVo> UserWatchList();

}
